use "post_box_data_wide.dta", clear

egen id = group(wahljahr partei wknummer), label

* Regression Models

reg vs_difference 	i.listenplatz i.frau i.migrant i.doktor i.incumbency /// 
					i.wohnt_im_wk i.med_beruf i.jur_beruf i.educ_beruf ///
					i.soz_beruf i.wiss_beruf i.wirt_beruf i.in_ausbildung /// 
					i.nr_candidates c.age##c.age i.wahljahr, cluster(id)

est store diffreg
					
margins listenplatz, saving("post_box_effect", replace)
marginsplot, recast(scatter)

reg vs_box 			i.listenplatz i.frau i.migrant i.doktor i.incumbency /// 
					i.wohnt_im_wk i.med_beruf i.jur_beruf i.educ_beruf ///
					i.soz_beruf i.wiss_beruf i.wirt_beruf i.in_ausbildung /// 
					i.nr_candidates c.age##c.age, cluster(id)

est store boxreg
					
margins listenplatz, post saving("position_effects_box", replace)
marginsplot, recast(scatter)
		
reg vs_post			i.listenplatz i.frau i.migrant i.doktor i.incumbency /// 
					i.wohnt_im_wk i.med_beruf i.jur_beruf i.educ_beruf ///
					i.soz_beruf i.wiss_beruf i.wirt_beruf i.in_ausbildung /// 
					i.nr_candidates c.age##c.age, cluster(id)

est store postreg
					
margins listenplatz, post saving("position_effects_post", replace)
marginsplot, recast(scatter)

* Reg Table

esttab boxreg postreg diffreg using regs.rtf, se(3) compress nobaselevel replace ar2

********************* Interaction effects

* Age

reg vs_difference 	i.listenplatz##c.age##c.age i.frau i.migrant i.doktor i.incumbency /// 
					i.wohnt_im_wk i.med_beruf i.jur_beruf i.educ_beruf ///
					i.soz_beruf i.wiss_beruf i.wirt_beruf i.in_ausbildung /// 
					i.nr_candidates ///c.age##c.age 
					i.wahljahr, cluster(id)

margins listenplatz, at(age = (20(5)80)) saving("int_age_diff", replace)
marginsplot, recast(scatter) by(listenplatz)